This invention relates to manipulation of graphic structures.
FIGS. 1a and 1b illustrate examples of graphic structures. Kinematics is an approach to structure manipulation, construing a structure (or a portion of a structure) as having a recursive branching arrangement, beginning with a root joint 110a and 110b branching off to zero or more joints 111a and 111b each of which, in turn, may branch off to zero or more joints 112a, 120b, 130b, and 160b and so on, with each branch eventually terminating in an end effector 114a, 122b, 141b, 151b, and 162b.
Graphic structures are used in fields such as computer animation. For example, FIG. 2 shows a graphic structure 200 representing the upper body of a human, with a root joint representing the torso 210, joints representing the shoulders 220 and 230, elbows 221 and 231, and wrists 222 and 232, and end effectors representing the hands 223 and 233.
Forward kinematics addresses the problem: "Assuming a stationary root joint and given specific joint angles at the structure's joints, find the position of the end effectors." Using the upper body example 200, kinematics determines the positions of the hands 223 and 233, given the position of the torso 210 and the angles at the shoulders 220 and 230, elbows 221 and 231, and wrists 222 and 232. Only one configuration of the structure satisfies these conditions, and is readily determined by starting at the root joint 210 and positioning the joints 220, 221, 222, 230, 231, and 232 based on the given joint angles until the positions of the end effectors 223 and 233 are determined.
Inverse kinematics addresses the reverse problem: "Assuming a stationary root joint and given specific goal positions for the structure's end effectors, find the configuration of the structure that positions the end effectors at the goal positions." Again using the upper body example 200, inverse kinematics determines angles at the shoulders 220 and 230, elbows 221 and 231, and wrists 222 and 232 to place the hands 223 and 233 at specified goal positions.
Unlike forward kinematics, inverse kinematics addresses a problem that may have multiple solutions, as multiple sets of joint angles may satisfy the placement requirement of the end effectors.